<!--$Id: upgrade.so,v 10.17 2001/03/10 19:05:22 bostic Exp $-->
<!--Copyright (c) 1997,2008 Oracle.  All rights reserved.-->
<!--See the file LICENSE for redistribution information.-->
<html>
<head>
<title>Berkeley DB Reference Guide: Database upgrade</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,Java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table width="100%"><tr valign=top>
<td><b><dl><dt>Berkeley DB Reference Guide:<dd>Access Methods</dl></b></td>
<td align=right><a href="../am/truncate.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../toc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../am/verify.html"><img src="../../images/next.gif" alt="Next"></a>
</td></tr></table>
<p align=center><b>Database upgrade</b></p>
<p>When upgrading to a new release of Berkeley DB, it may be necessary to upgrade
the on-disk format of already-created database files.  <b>Berkeley DB
database upgrades are done in place, and so are potentially
destructive.</b>  This means that if the system crashes during the upgrade
procedure, or if the upgrade procedure runs out of disk space, the
databases may be left in an inconsistent and unrecoverable state.  To
guard against failure, the procedures outlined in
<a href="../../ref/upgrade/process.html">Upgrading Berkeley DB installations</a>
should be carefully followed.  If you are not performing catastrophic
archival as part of your application upgrade process, you should at
least copy your database to archival media, verify that your archival
media is error-free and readable, and that copies of your backups are
stored offsite!</p>
<p>The actual database upgrade is done using the <a href="../../api_c/db_upgrade.html">DB-&gt;upgrade</a>
method, or by dumping the database using the old version of the Berkeley DB
software and reloading it using the current version.</p>
<p>After an upgrade, Berkeley DB applications must be recompiled to use the new
Berkeley DB library before they can access an upgraded database.
<b>There is no guarantee that applications compiled against
previous releases of Berkeley DB will work correctly with an upgraded database
format.  Nor is there any guarantee that applications compiled against
newer releases of Berkeley DB will work correctly with the previous database
format.</b> We do guarantee that any archived database may be upgraded
using a current Berkeley DB software release and the <a href="../../api_c/db_upgrade.html">DB-&gt;upgrade</a>
method, and there is no need to step-wise upgrade the database using
intermediate releases of Berkeley DB.  Sites should consider archiving
appropriate copies of their application or application sources if they
may need to access archived databases without first upgrading them.</p>
<table width="100%"><tr><td><br></td><td align=right><a href="../am/truncate.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../toc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../am/verify.html"><img src="../../images/next.gif" alt="Next"></a>
</td></tr></table>
<p><font size=1>Copyright (c) 1996,2008 Oracle.  All rights reserved.</font>
</body>
</html>
